<!DOCTYPE html>
<html>

<head>
  <title>图片的绝对路径地址转换成base64编码,点击下载</title>
</head>

<body>
  <a href="http://192.168.1.243:8180/default/1833941514308589.txt" download="w3logo">点击下载</a>
  <a href="https://www.baidu.com/img/flexible/logo/pc/result.png" type="application/x-zip-compressed" download="w3logo" media="screen and (min-width:500px)">点击下载2</a>
  <a href="http://127.0.0.1:5500/xm.jpg" type="application/x-zip-compressed" download="w3logo" media="screen and (min-width:500px)">点击下载3</a>
  <a href="blob:https://element.eleme.cn/acfcf18d-2bcf-4e40-8925-f660fc3483a8" type="application/x-zip-compressed" download="w3logo" media="screen and (min-width:500px)">点击下载4</a>

    <script src="./aa.js" type="text/javascript"></script>
    <script>
      // download('http://192.168.1.243:8180/default/1833941514308589.txt', "w3logo");

//       /**
// * DataUrl转为File
// * @param {String} dataUrl - dataUrl地址
// * @param {String} fileName - file文件名
// */
//       function dataURLtoFile(dataUrl, fileName) {
//         var arr = dataUrl.split(','), mime = arr[0].match(/:(.*?);/)[1],
//           bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
//         while (n--) {
//           u8arr[n] = bstr.charCodeAt(n);
//         }
//         return new File([u8arr], fileName, { type: mime });
//       }

//       function convertBase64UrlToBlob(urlData) {
//         const bytes = window.atob(urlData.split(',')[1]) // 去掉url的头，并转换为byte
//         // 处理异常,将ascii码小于0的转换为大于0
//         const ab = new ArrayBuffer(bytes.length)
//         const ia = new Uint8Array(ab)
//         for (let i = 0; i < bytes.length; i++) {
//           ia[i] = bytes.charCodeAt(i)
//         }

//         return new Blob([ab], { type: 'image/png' })
//       }
//       function downloadFile(data) {
//         var blob = convertBase64UrlToBlob(data.path);
//         var a = document.createElement("a");
//         a.download = data.name;
//         a.href = URL.createObjectURL(blob);
//         a.click();
//       }


//       // let a = dataURLtoFile({
//       //   name: '123',
//       //   path: 'http://192.168.1.243:8180/default/1833941514308589.txt'
//       // })

//       let a = dataURLtoFile('http://192.168.1.243:8180/default/1833941514308589.txt', '123')
//       console.log(a);

// let filename = "123"

//       // 生成一个 a 标签
//     const a = document.createElement('a')
//     // 创建一个点击事件
//     const event = new MouseEvent('click')
//     // 将 a 的 download 属性设置为我们想要下载的图片的名称，若 name 不存在则使用'图片'作为默认名称
//     a.download = filename || '图片'
//     // 将生成的 URL 设置为 a.href 属性
//     a.href = 'http://192.168.1.243:8180/default/1833941514308589.txt'
//     // 触发 a 的点击事件
//     a.dispatchEvent(event)
      // //图片的绝对路径地址转换成base64编码
      // function getBase64Image(img) {
      //   var canvas = document.createElement("canvas");
      //   canvas.width = img.width;
      //   canvas.height = img.height;
      //   var ctx = canvas.getContext("2d");
      //   ctx.drawImage(img, 0, 0, img.width, img.height);
      //   var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
      //   var dataURL = canvas.toDataURL("image/"+ext);
      //   return {
      //     dataURL: dataURL,
      //     type: "image/"+ext
      //   };
      // }  
      // //实现点击下载功能
      // function download(blobUrl) {
      //   const a = document.createElement('a');
      //   a.style.display = 'none';
      //   a.download = '元元';
      //   a.href = blobUrl;
      //   a.click();
      // }

      // // var img = "https://pic2.zhimg.com/v2-5ec052fff9d691c6a61654ed16440547_400x224.jpg";
      // var img = "http://192.168.1.243:8180/default/1833941514308589.txt";
      // var image = new Image();
      // image.crossOrigin = '';
      // image.src = img;
      // image.onload = function(){
      //   var base64 = getBase64Image(image);
      //   download(base64.dataURL);
      // } 
    </script>
</body>

</html>